<?php

namespace app\common\model;

use think\Model;
use think\Validate;

class Link extends Model
{
    // 数据表名称
    //**不论什么时候 加上表前缀**
    protected $table = 'link';
    // 数据表主键 复合主键使用数组定义 不设置则自动获取
    protected $pk = 'lid';

    /**
     * 手册搜索 自动完成
     * @param $data
     * @return array
     */
    //添加时处理的字段
    protected  $insert = ['addtime'];
    protected  function setAddTimeAttr(){
        return time();
    }
    //添加
    public function add($data){
        //1.验证
        $validate = new Validate(
            [
                'lname' => 'require',
                'thumb'  => 'require',
                'url'   => 'require',
                'sort'  => 'require|number'
            ],
            [
                'lname.require' => '链接名称不能为空',
                'thumb.require' => '链接缩略图不能为空',
                'url.require'  => '链接地址不能为空',
                'sort.require' => '链接排序不能为空',
                'sort.number' => '链接排序必须为数字'
            ]
        );
        if(!$validate->check($data)){
            return ['valid'=>0,'msg'=>$validate->getError()];
        }else{
            //2.保存数据
            $row = $this->save($data);
            if($row){
                return ['valid'=>1,'msg'=>'新增成功'];
            }else{
                return ['valid'=>0,'msg'=>'新增失败'];
            }
        }
    }

    //编辑
    public function newedit($data){
        $lid = input('param.lid');
        $row = $this->save($data,[$this->pk=>$lid]);
        if($row){
            return ['valid'=>1,'msg'=>'编辑成功'];
        }else{
            return ['valid'=>0,'msg'=>'编辑失败'];
        }
    }
}
